From 38b71912fbbe19f4e87fac54122c74561fba2f1d Mon Sep 17 00:00:00 2001 From: Camila Ayres Date: Thu, 3 Apr 2025 19:10:15 +0200 Subject: [PATCH] fix(PinState): don't trigger sync when file's PinState changed to Unspecified. LibreOffice/Microsoft office might touch the files for unknown reasons, creating a constant sync state (icon) visible in the parent folder. This fix excludes PinState changes from a new sync if the trigger might have been an external application. Signed-off-by: Camila Ayres --- src/gui/folder.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/gui/folder.cpp b/src/gui/folder.cpp index 62aa980cd..f0454c97f 100644 --- a/src/gui/folder.cpp +++ b/src/gui/folder.cpp @@ -652,8 +652,11 @@ void Folder::slotWatchedPathChanged(const QStringView &path, const ChangeReason if (record.isValid() && !FileSystem::fileChanged(path.toString(), record._fileSize, record._modtime) && _vfs) { spurious = true; - if (auto pinState = _vfs->pinState(relativePath.toString())) { + qCDebug(lcFolder) << "PinState for" << relativePath << "is" << *pinState; + if (*pinState == PinState::Unspecified) { + spurious = false; + } if (*pinState == PinState::AlwaysLocal && record.isVirtualFile()) { spurious = false; } -- 2.30.2